package com.example.dao;

import com.example.entity.OrderDetails;
import com.example.entity.Params;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.springframework.stereotype.Repository;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

@Repository
public interface OrderDetailsDao extends Mapper<OrderDetails> {

    /**
     * 根据 order_id 查询订单详情（order_details 表）
     */
    @Select("SELECT * FROM order_details WHERE order_id = #{orderId}")
    List<OrderDetails> findByOrderId(@Param("orderId") Integer orderId);

    /**
     * 根据 product_id 查询包含该商品的订单明细
     */
    @Select("SELECT * FROM order_details WHERE product_id = #{productId}")
    List<OrderDetails> findByProductId(@Param("productId") Integer productId);

    /**
     * 复合查询（例如：按 orderId + price 范围等）
     */
    List<OrderDetails> findBySearch(@Param("params") Params params);
}
